package com.vr.cloudpicture.model.dto.picture;

import com.vr.cloudpicture.common.PageRequest;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 图片查询请求
 *
 * @author hzh
 * @date 2025/05/07
 */
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PictureQueryRequest extends PageRequest implements Serializable {
    /** 串行版本 UID */
    private static final long serialVersionUID = 1353421291859445874L;

    /** id */
    private Long id;
    /** 图片名称 */
    private String name;
    /** 图片简介 */
    private String introduction;
    /** 分类 */
    private String category;
    /** 标签 */
    private List<String> tags;
    /** 图片大小 */
    private Long picSize;
    /** 图片宽度 */
    private Integer picWidth;
    /** 图片高度 */
    private Integer picHeight;
    /** 图片比例 */
    private Double picScale;
    /** 图片格式 */
    private String picFormat;
    /** 用户 ID */
    private Long userId;
    /**
     * 搜索文本(按照名称或者简介)
     */
    private String searchText;

    /**
     * 状态：0-待审核; 1-通过; 2-拒绝
     */
    private Integer reviewStatus;

    /**
     * 审核信息
     */
    private String reviewMessage;

    /**
     * 审核人 id
     */
    private Long reviewerId;
    /** 空间 ID */
    private Long spaceId;
    /**
     * spaceId是否为null
     * true是查询spaceId为null的数据(公共图库的)
     * false是查询spaceId不为null的数据(私有空间的)
     * */
    private Boolean nullSpaceId;

    /** 开始编辑时间 */
    private LocalDateTime startEditTime;
    /** 结束编辑时间 */
    private LocalDateTime endEditTime;


}
